var time=0;
var pause=true;
var set_timer;
var d=new Array(10);
var d_direct=new Array(
		[0],
		[2,4],
		[1,3,5],
		[2,6],
		[1,5,7],
		[2,4,6,8],
		[3,5,9],
		[4,8],
		[5,7,9],
		[6,8]
	);
var d_posXY=new Array(
		[0],
		[0,0],
		[150,0],
		[300,0],
		[0,150],
		[150,150],
		[300,150],
		[0,300],
		[150,300],
		[300,300]
	);
d[1]=1;d[2]=2;d[3]=3;d[4]=4;d[5]=5;d[6]=6;d[7]=7;d[8]=8;d[9]=0;
function move(id){
	var i=1;
	for(i=1; i<10; ++i){
		if( d[i] == id )
			break;
	}
	var target_d=0;
	target_d=whereCanTo(i);
	if( target_d != 0){
		d[i]=0;
		d[target_d]=id;
		document.getElementById("d"+id).style.left=d_posXY[target_d][0]+"px";
		document.getElementById("d"+id).style.top=d_posXY[target_d][1]+"px";
	}
	var finish_flag=true;
	for(var k=1; k<9; ++k){
		if( d[k] != k){
			finish_flag=false;
			break;
		}
	}
	if(finish_flag==true){
		if(!pause)
			start();
		alert("congratulation");
	}
}
function whereCanTo(cur_div){
	var j=0;
	var move_flag=false;
	for(j=0; j<d_direct[cur_div].length; ++j){
		if( d[ d_direct[cur_div][j] ] == 0 ){
			move_flag=true;
			break;
		}
	}
	if(move_flag == true){
		return d_direct[cur_div][j];
	}else{
		return 0;
	}
}
function timer(){
	time+=1;
	var min=parseInt(time/60);
	var sec=time%60;
	document.getElementById("timer").innerHTML=min+"分"+sec+"秒";
}
function start(){
	if(pause){
		document.getElementById("start").innerHTML="暂停";
		pause=false;
		set_timer=setInterval(timer,1000);
	}else{
		document.getElementById("start").innerHTML="开始";
		pause=true;
		clearInterval(set_timer);
	}
}
function reset(){
	time=0;
	random_d();
	if(pause)
		start();
}
function random_d(){
	for(var i=9; i>1; --i){
		var to=parseInt(Math.random()*(i-1)+1);
		if(d[i]!=0){
			document.getElementById("d"+d[i]).style.left=d_posXY[to][0]+"px";
			document.getElementById("d"+d[i]).style.top=d_posXY[to][1]+"px";
		}
		if(d[to]!=0){
			document.getElementById("d"+d[to]).style.left=d_posXY[i][0]+"px";
			document.getElementById("d"+d[to]).style.top=d_posXY[i][1]+"px";
		}
		var tem=d[to];
		d[to]=d[i];
		d[i]=tem;
	}
}
window.onload=function(){
	reset();
}